package com.gc.sql.test;

public final class ExpressionWithAlias extends Object {
    private Expression expression;
    
    private Alias alias;
    
    public ExpressionWithAlias(Expression expression, Alias alias) {
        this.expression = expression;
        this.alias = alias;
    }
    private ExpressionWithAlias() {
    }
    public static ExpressionBuilder builder() {
        ExpressionWithAlias self = new ExpressionWithAlias();
        return self.new ExpressionBuilder ();
    }
    public class ExpressionBuilder extends Object {
        private ExpressionBuilder () {}
        public AliasBuilder expression(Expression expression) {
            ExpressionWithAlias.this.expression = expression;
            return ExpressionWithAlias.this.new AliasBuilder ();
        }
    
    }
    public class AliasBuilder extends Object {
        private AliasBuilder () {}
        public ExpressionWithAlias alias(Alias alias) {
            ExpressionWithAlias.this.alias = alias;
            return ExpressionWithAlias.this;
        }
    
    }
        @Override
        public String toString() {
            return String.valueOf(expression)+" "+String.valueOf(alias);
        }

}
